Slot allocation, user grouping, and frame partition method and apparatus for H-FDD systems

ABSTRACT

A base station is configured to assign, to each remote station, a down-link data rate and an up-link data rate for communication between that remote station and the base station, provide, for each remote station, a down-link slot allocation for communication between that remote station and the base station, and provide, for each remote station, an up-link slot allocation for communication between that remote station and the at least one base station. A minimum down-link data rate varies with the down-link slot allocation for each remote station, and a minimum up-link data rate varies with the respective up-link slot allocation for each remote station. The down-link slot allocations and the up-link slot allocations are determined so as to maximize the minimum of the down-link data rates and the up-link data rates.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is a continuation of U.S. patent applicationSer. No. 12/388,302, entitled “Slot Allocation, User Grouping, and FramePartition Method and Apparatus for H-FDD Systems,” filed on Feb. 18,2009, now U.S. Pat. No. 8,238,367, which claims priority to U.S.Provisional Application No. 61/039,919, entitled “Joint Slot Allocation,User Grouping and Frame Partitioning for OFDMA H-FDD,” filed on Mar. 27,2008. Both of the above-referenced applications are hereby incorporatedby reference herein in their entireties.

FIELD OF TECHNOLOGY

The present disclosure relates generally to slot-based communicationschemes and devices that use them, and more particularly, to techniquesfor assigning users to one of a number of groups in a half-duplex,slot-based communication scheme, allocating slots in each grouping, andpartitioning a frame ratio for the groupings.

DESCRIPTION OF THE RELATED ART

Slot-based communication systems, such as WiMAX systems and othersystems employing the IEEE 802.16 family of communication standards,typically include one or more base stations and two or more remotestations that communicate with the one or more base stations bytransmitting data in a plurality of time and frequency slots. Thesesystems use different communication schemes for up-linking data (i.e.,sending from the remote stations to the base stations) and fordown-linking data (i.e., sending from the base stations to the remotestations). Time division duplexing (TDD) schemes, for example, assignthe same frequency slot for both up-linking and down-linking, but assigndifferent remote stations to transmit at different time slots.Full-frequency division duplexing (F-FDD) schemes assign differentfrequency slots for up-linking and down-linking data and allow remotestations to communicate on both links simultaneously, i.e., on a commontime slot. A hybrid-type scheme now being explored is half-frequencydivision duplexing (H-FDD) in which different frequency slots areassigned for down-linking and up-linking, like F-FDD, but where timeslots are not shared, meaning that a remote station can only communicateon one of these two links at a given time. While some communicationstandards such as WiMAX Revision 1.0 only require the more traditionalTDD, the desire for F-FDD/H-FDD compliant systems is increasing as a wayof promoting performance flexibility and better meeting the regulatorydemands of various countries where networks may be installed.

The three schemes offer different advantages and disadvantages. The TDDscheme is generally considered more flexible because the ratio of thedown-link time and the up-link time can be adjusted with greater ease;however that ease comes at the expense of increased time delay. F-FDDschemes require more complex schemes to process down-linking andup-linking data simultaneously, but processing delay is reduced overthat of TDD.

For H-FDD schemes there are unique design challenges separate from theother two. Unlike TDD and F-FDD schemes, H-FDD schemes assign remotestations to different groups, one for the down-link and another forup-link at any given time, such that a remote station is only assignedto one group at a time. The time and frequency slots are divided into aseries of frames, where each frame is divided into the number ofidentified groups. The boundary between the groups is the framepartition. Resource allocation and scheduling is achieved throughassigning remote stations to one of the various slots with a group. Eachslot can be considered the minimum unit for data allocation and maycomprise one or more subcarriers and one or more symbols per subcarrier,where the symbols may be modulated on subcarriers using orthogonalfrequency-division multiplexing (OFDM), as in WiMAX systems, or usingany other desired modulation scheme consistent with slot-basedcommunication.

An H-FDD compliant base station, therefore should efficiently assignusers to various groups, set frame partitions (or relative sizes)between groups, and allocate slots among the remote stationscommunicating with that base station at any given time, to maximizesystem capacity and minimize power consumption.

SUMMARY OF THE DISCLOSURE

In one embodiment, a base station is configured to establish duplexcommunication between the base station and a plurality of remotestations, wherein the duplex communication is partitioned into a seriesof frames, each frame including (i) a total integer number of slots, N,for down-link communication and (ii) a total integer number of slots, M,for up-link communication. The base station comprises a processor, and acomputer readable storage medium coupled to the processor. The computerreadable storage medium stores instructions that, when executed by theprocessor, cause the processor to assign, to each remote station, arespective down-link data rate and a respective up-link data rate forcommunication between that remote station and the base station, provide,for each remote station, a respective down-link slot allocation forcommunication between that remote station and the base station, whereineach respective down-link slot allocation comprises a number of slots ofthe total slots N, and provide, for each remote station, a respectiveup-link slot allocation for communication between that remote stationand the at least one base station, wherein each respective up-link slotallocation comprises a number of slots of the total slots M. Each remotestation has a respective weighted down-link data rate associated withthe respective down-link data rate assigned to that remote station, andeach remote station has a respective weighted up-link data rateassociated with the respective up-link data rate assigned to that remotestation, whereby a minimum of the respective weighted down-link datarates varies with the respective down-link slot allocation for eachremote station, and a minimum of the respective weighted up-link datarates varies with the respective up-link slot allocation for each remotestation. The computer readable storage medium stores instructions that,when executed by the processor, cause the processor to determine therespective down-link slot allocations of the plurality of remotestations and the respective up-link slot allocations of the plurality ofremote stations so as to maximize the minimum of the weighted down-linkdata rates and of the weighted up-link data rates of the plurality ofremote stations.

In another embodiment, a base station is configured to duplexcommunication in a slot-based communication system, whereincommunication is among the base station and a plurality of remotestations over a series of frames, each frame including (i) a totalinteger number of slots, N, for down-link communications and (ii) atotal integer number of slots, M, for up-link communications. The basestation comprises a processor and a computer readable storage mediumcoupled to the processor. The computer readable storage medium storesinstructions that, when executed by the processor, cause the processorto identify, for each remote station of the plurality of remotestations, a respective down-link data rate and a respective up-link datarate for communication between the remote station and the base station,wherein each remote station has (i) a respective down-link weightingfactor indicative of a respective desired down-link quality of servicelevel of the remote station and (ii) a respective up-link weightingfactor indicative of a respective desired up-link quality of servicelevel of the remote station, wherein each remote station has arespective weighted down-link data rate associated with (i) therespective down-link data rate and (ii) the respective down-linkweighting factor, and wherein each remote station has a respectiveweighted up-link data rate associated with (i) the respective up-linkdata rate and (ii) the respective up-link weighting factor. The computerreadable storage medium also stores instructions that, when executed bythe processor, cause the processor to assign to each of the plurality ofremote stations (i) a respective down-link slot allocation for receivingdown-link data from the base station during the frame and (ii) arespective up-link slot allocation for transmitting up-link data to thebase station during the frame, so as to maximize the minimum of therespective weighted down-link data rates and of the respective weightedup-link data rates of the plurality of remote stations, assign each ofthe plurality of remote stations to one of a first user group and asecond user group based on (i) the assigned respective down-link slotallocation and (ii) the assigned respective up-link slot allocation foreach of the remote stations, wherein remote stations in the first usergroup are to receive down-link data in a first subframe and communicateup-link data in a second subframe, and wherein remote stations in thesecond user group are to communicate up-link data in the first subframeand receive down-link data in the second subframe, and determine a framepartition separating the first subframe from the second subframe basedon the assigned respective down-link slot allocation and the assignedrespective up-link slot allocation for each of the remote stations.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a cellular communication system for duplex communicationbetween remote stations at least one base station;

FIG. 2 depicts an example frame for a duplex communication in aslot-based communication system having user groups;

FIG. 3 depicts another illustration of the example frame of FIG. 2illustrating the respective down-link slot allocation, n_(i), and therespective up-link slot allocation, m_(i), for remote station i in oneof the allocated user groups, Group 1;

FIG. 4 depicts a process for slot allocation, user grouping, framepartitioning, and slot allocation re-optimization in accordance with anexample;

FIG. 5 depicts a graphical representation of example linear programmingconstraints which may be used to determine a respective down-link slotallocation;

FIG. 6 depicts a graphical representation of example linear programmingconstraints which may be used to determine a respective up-link slotallocation; and

FIG. 7 depicts an example base station that may implementslot-allocation, user grouping, and frame partitioning techniques suchas described herein.

DETAILED DESCRIPTION

FIG. 1 depicts an example communication system 10 in connection withwhich slot-allocation methods and apparatus described herein may beused. More particularly, the slot-allocation techniques may be used incellular and other communication systems and may employ the IEEE 802.16family of communication standards or any other slot-based communicationtechniques to provide for communication among one or more base stationsand a plurality of remote stations, which may be either fixed (i.e.,stationary) or mobile stations. The example communication system 10illustrated in FIG. 1 includes three base stations 12, 14, 16 and threeremote stations 18, 20, 22.

In slot-based communication systems, such as systems employing WiMAX(WiMAX systems) as well as, more generally, cellular and othercommunication systems for providing voice, data, audio, and videocommunication, efficient operation requires careful allocation ofavailable time and frequency resources among all remote stations usingthe system to achieve performance objectives such as maximum usage,quality of service requirements, and fairness to users, for example. Forexplanatory purposes, an example WiMAX system as shown in FIG. 1 isdescribed herein, but those of ordinary skill in the art will appreciatethat slot-allocation techniques described herein also may be used in anyother slot-based communication system. Further, the slot-allocationtechniques may be practiced in connection with communication systemsemploying modulation schemes other than the orthogonalfrequency-division multiplexing (OFDM) typically employed by WiMAXsystems.

The illustrated WiMAX system 10 is described as an H-FDD OFDMA system,in which joint slot allocation, user grouping, and frame partitioningtechniques are described. The techniques have been developed based ondecision factors of interest including traffic demand and throughput,channel conditions in terms of CINR (carrier-to-interference-plus-noiseratio), and QoS (quality of service) concerns such as latency. Morespecifically, example heuristic algorithms derived from an optimizationproblem have been proposed, and which may be implemented from either theremote station side or the base station side, although the later isprimarily described herein.

The illustrated WiMAX system 10 has a predetermined amount of availabletime and frequency resource which is divided into frames. As discussedfurther below, each frame preferably has a first subframe and a secondsubframe, each of which is divided into minimum data allocation unitscalled slots. A slot corresponds to a predetermined range of subcarriers(e.g., 14, 24, or 48 subcarriers, etc.) at a given time and for apredetermined duration (e.g., 0.3 ms). The remote stations are assignedto different user groups, such that duplex communication can be achievedin each subframe. In an H-FDD scheme WiMAX system, remote stationsassigned to Group 1 may simultaneously receive down-link data, while theremote stations assigned to Group 2 are simultaneously communicatingup-link data. These simultaneous communications are achieved byassigning to each remote station a different slot or slots (and thusdifferent subcarrier and symbol) within a subframe. The base stations12, 14, 16 preferably allocate available slots to remote stationsjudiciously, as described herein in detail.

The system 10 may assign and re-assign remote stations to one of eitherGroup 1 or Group 2 each frame. Or such user grouping may occur on a lessfrequent basis. By assigning remote stations to slots in only one of theidentified groups per frame, each remote station can process eitherup-link or down-link data only at one time while the system is stillable to maintain half-duplex communication. For example, the basestation 12 assigns, re-assigns, slots in the Group 1 and Group 2 toremote stations or users communicating with the base station 12 andattempts, in doing so, to maximize system capacity, provide fairness tousers, meet users' individual requirements for quality of service, etc.The system recognizes that these performance goals may conflict at timesand require tradeoffs in allocating slots among remote stations.Therefore, the slot-allocation techniques described below provide a wayfor base stations of a slot-based communication system to efficientlyallocate slots among remote stations.

In WiMAX and other cellular systems, each remote station periodicallyprovides to the base station with which it is communicating at any giventime information regarding the CINR for the remote station within eachgroup. This enables the base station to calculate the data rate per slotfor each remote station and each group.

FIG. 2 depicts the H-FDD frame structure 100 for down-link and up-linkcommunications using a two specific standalone Mobile Application Part(MAP) messages and a single preamble. The frame may be 5 ms in length,for example. A base station (such as base stations 12, 14, and 16)sequentially broadcasts H-FDD frames 102 that are each divided intosubframes 104 separated from one another by a frame partition 106. Thesubframes 104 contain a down-link portion 107 and an up-link portion109. Each down-link portion 107 in the H-FDD frame 102 contains a MAPmessage 108 that is broadcast to all remote stations to map thedown-link intervals for those stations and to allocate up-link intervalsfor subsequent frames. The MAP messages 108 also identify the structureof frame data 110 that follows. To achieve half duplex operation, eachthe down-link portions 107 and the up-link portions 109 of each subframe104 are assigned to a different broadcast group. The first portion 107 ais assigned to Group 1 and broadcasts MAP message 108 a for the remotestations in Group 1; while subframe portion 107 b is assigned to Group 2and broadcasts MAP message 108 b for the remote stations in Group 2. Acommon preamble 112 is used to indicate to remote stations the beginningof each new H-FDD frame 102.

Each subframe 104 also includes an up-link subframe portion 109, one ofwhich 109 a is assigned to Group 2 in the first subframe 104 a, theother of which 109 b is assigned to Group 1 in the second subframe 104b. These subframes 104 a and 104 b are separated by the frame partition106. The first subframe portion 109 a contains up-link data receivedfrom the Group 2 remote stations. This up-link data is receivedsimultaneously to the transmission of down-link data being sent to theGroup 1 remote stations by the subframe portion 107 a. The subframe 104b has two portions 107 b and 109 b assigned to different user groups asa result for achieving the converse result to that of subframe 104 a.While two identical frames 102 are shown, as discussed further below,each frame may have a different frame portion and Group load balancing.

FIG. 3 graphically depicts a portion of the H-FDD frame 102 (simplifiedwithout the preamble and MAP messages) for communication in an exampleWiMAX system. As shown, the horizontal axis represents time (orsymbols), and the vertical axis represents frequency (or subcarrier).The subframe portion 107 a uses subcarrier frequencies assigned todown-link data in the H-FDD system by one of the base stations 12, 14,or 16, while the subframe portion 109 a uses subcarrier frequenciesassigned to up-link data.

An OFDMA modulation scheme mixes different symbols with the differentsubcarriers to define slots of a determined size, where each subframe isdivided into a number of slots, which are then assigned to remotestations by the base station. A slot can be as small as one symbol byone subcarrier, or can be any desired larger size, from multiplying anumber of symbols by a number of subcarriers. The total number of slotsin the down-link subframe portions 107 of the H-FDD frame 102 is N. Thetotal number of slots in the up-link subframe portions 109 of the H-FDDframe 102 is M.

In the illustrated example, portion 118 of subframe 104 a and portion120 of subframe 104 b represent time and frequency resources allocatedto a user i (i.e., the remote station belonging to user i) in Group 1,and for the particular subframe frame shown. For convenience, thenumbers of slots allocated to user i in the subframe portion 107 andallocated to the user i in subframe 109, respectively, are expressedherein as n_(i) and m_(i). The values n_(i) and m_(i) may be differentfor the down-link path and the up-link path, furthermore, these valuesmay change from H-FDD frame to frame. The portions 118 and 120 may havedifferent shapes, consistent with the WiMAX specification (i.e., theportions 118 and 120 need not be rectangular).

The frame partition 106 separates the Group 1 subframes (107 a and 109b) from the Group 2 subframes (107 b and 109 a) and is determined fromthe frame portion ratio of

$\frac{x}{1 - x},$where x=0 or 1 reflects a zero partition H-FDD frame and where x istypically between 0 and 1.

In order to optimize the configuration for H-FDD operation, three setsof control variables are determined by the present system: (1) theinteger number of slots n_(i) and m_(i) assigned to a user i, where i isan integer from 1 to I (the total number of users or remote stations);(2) the binary group indicator for user i (a_(i)=1 meaning that the useris in Group 1 and a_(i)=0 meaning that the user is in Group 2); and (3)the frame partition, x. As shown below, these values are derived hereinfrom given parameters such as the respective down-link data rate foruser i per slot, i.e., R_(i), and the respective up-link data rate foruser i per slot, Q_(i), where R_(i) is a function of the down-linkcarrier-to-interference-plus-noise ratio (CINR) measured by the remotestation and reported to the base station, and Q_(i) is a function of theup-link CINR measured by the base station.

In WiMAX and other cellular systems, for example, each remote stationperiodically provides to the base station with which it is communicatingat any given time information regarding the CINR for the remote stationwithin each group. This enables the base station to calculate the datarate per slot for each remote station and each group.

To determine the frame partitioning ratio

$\frac{x}{1 - x},$it is assumed that 0≦x≦1, and it is desired to be able to set xdynamically for each frame. By setting x over this range, the loadingbetween user groups can be set to any value, such as 50/50, 90/10,10/90, etc. In fact, it is noted that for techniques described herein,by setting x=1, the techniques may be applied to F-FDD systems. For someexamples described herein, each user is assumed to have the same R_(i)or Q_(i) over an H-FDD frame; this is termed a uniform channelcondition. However, in the case of multiple zones (e.g., PUSC reuse 1,PUSC reuse 3, and AMC), each zone within a portion of the subframe mayhave different values of R_(i) and Q_(i) because each zone will have itsown CINR, meaning that the frame partition, x, can be applied on a perzone basis. Although in the described examples, each frame contains asingle frame partition between subframes, where the down-link subframeportions (107) have the same frame partition (and thus partition ratio)as the up-link subframe portions (109).

To optimize the configuration for H-FDD, the system may take intoaccount differing levels of quality of service (QoS) required by and/orprovided to different remote stations (i.e., different users). The datarate for a remote station may for example depend upon the nature of theservice the corresponding user has subscribed to, with some users beingpre-assigned higher data rates or bandwidth priorities over other users.The base station, for example, may allocate slots to the remote stationsby determining a weighted remote-station data rate for each remotestation (also termed a respective weighted data rate). This data ratemay be obtained by summing the data rates for the remote station in eachof the subframes or frequency reuse zones to develop a composite datarate for each remote station and then to apply a weighting to thecomposite data rate of each remote station reflective of the desired QoSfor that remote station. A minimum of the respective weighted data ratesof the plurality of remote stations will vary with the respective slotallocations provided for the plurality of remote stations. Then, theoverall slot allocation may be determined by maximizing the minimum ofthe weighted per-user data rates across all users and groups orfrequency reuse zones. In this way, the weighting for down-link andup-link transmissions are taken into account for slot-allocation.

In symbolic terms, the base stations (e.g., 12, 14, 16) may allocateslots in an H-FDD system using slot-allocation approach that seeks tomaximize the minimum of the respective weighted down-link data rate andthe respective weighted up-link data rate quantities as follows:

$\begin{matrix}{\min\limits_{i}\left\lbrack {\min\limits_{{DL},{UL}}\left\{ {\frac{n_{i}R_{i}}{w_{i}},\frac{m_{i}Q_{i}}{v_{i}}} \right\}} \right\rbrack} & \left( {{Expression}\mspace{14mu} 1} \right)\end{matrix}$subject to the following constraints:

$\begin{matrix}{{\sum\limits_{i = 1}^{I}n_{i}} = N} & \left( {{Constraint}\mspace{14mu} 1} \right) \\{{\sum\limits_{i = 1}^{I}m_{i}} = M} & \left( {{Constraint}\mspace{14mu} 2} \right) \\{{\sum\limits_{i = 1}^{I}{a_{i}n_{i}}} = {xN}} & \left( {{Constraint}\mspace{14mu} 3} \right) \\{{\sum\limits_{i = 1}^{I}{a_{i}m_{i}}} = {\left( {1 - x} \right)M}} & \left( {{Constraint}\mspace{14mu} 4} \right)\end{matrix}$n _(i)≧0, integer for every i  (Constraint 5)m _(i)≧0, integer for every i  (Constraint 6)a _(i)=0 or 1, for every i  (Constraint 7)0≦x≦1  (Constraint 8)wi(≧0):DL weight for user i  (Constraint 9)vi(≧0):UL weight for user i  (Constraint 10)

Constraint 1 requires that the total of the numbers of slots allocatedto all I users or remote stations for down-link communications equalsthe total number of slots, N, in all down-link subframes (e.g., subframeportions 107 across subframes 104 a and 104 b). Correspondingly,Constraint 2 requires that the total of the numbers of slots allocatedto all I users or remote stations for up-link communications equals thetotal number of slots, M, in all up-link subframes (e.g., subframeportions 109 across subframes 104 a and 104 b). In other words, allavailable slots are to be allocated to one of the I users for eachframe. While N and M may be identical for each frame, they may bedifferent depending on slot structures.

Constraint 3 pertains to the down-link subframe portions 107, where x isa first subframe length (e.g., subframe 104 a) and 1−x is a secondsubframe length (e.g., subframe 104 b) and a_(i) is the binary usergroup identifier for the Group 1, and 1−a_(i) is the user groupidentifier Group 2. Constraint 7 shows that a_(i) is 1 for user i ifthat user has been assigned to the Group 1, and 0 for user i if thatuser has been assigned to Group 2. Constraint 4 pertains to the up-linksubframe portions 109, in similar manner to that of Constraint 3 for thedown-link subframe portions 107. Constraint 8 defines the relationshipof x.

Constraints 5 and 6 require the numbers of slots allocated to each useri in the down-link portion (Constraint 5) and the up-link portion(Constraint 6) to be non-negative numbers.

The denominator of the quantity defined by Expression 1 includes adown-link communication numerical weight, w_(i), assigned to each useror remote station i, which may correlate with, for example, the priorityor price of communications of user i for down-link communications. Forexample, some users may have premium services that allow them to havehigher data rates and/or higher priority over other users. A given useri for whom w_(i)=0 will have a weighted data rate of

$\frac{n_{i}R_{i}}{w_{i}} = {\infty.}$Consequently, the weighted data rate of that user cannot be a minimum ofthe weighted data rates among all users and thus will not bear on themaximization of that minimum.

The denominator of Expression 1 also includes an up-link communicationnumerical weight, v_(i), assigned to each user or remote station i,which may correlate with, for example, the priority or price ofcommunications of user i for up-link communications. Thus, in a H-FDDsystem, a user i may have a different priority, or weighting factor, fordown-link and up-link communications.

Three types of users may be considered, by way of example. One, someusers may be satisfied if all of their data is communicated at whateverminimum data rate is determined for the overall communication system 10.For these users, their corresponding communication weights may be set tozero (w_(i)=0, v_(u)=0). As explained above, the weighted data rate ofthese users will have no bearing on the maximization of the minimumweighted per-user data rate. Two, other users may require a particularminimum data rate because of QoS or other requirements. These users willhave a non-zero w₁ and R_(min,i) and a non-zero v_(i) and Q_(min,i),where the required minimum data rate R_(min,i) and Q_(min,i) satisfyn_(i)R_(i)>R_(min,i) and m_(i)Q_(i)>Q_(min,i) respectively for down-linkand up-link. Three, still other users may be satisfied if all of theirdata is communicated on a when-possible or “best efforts” basis. Forthese users R_(min,i)=0 and Q_(min,i)=0.

It should be noted that inasmuch as each remote station has weighteddata rates as described above, there will be a “minimum” weighted datarate associated with each group of remote stations for down-linkcommunications and each group of remote stations for up-linkcommunications. These minimums are what are maximized. One or moreremote stations in the group may have the minimum weighted data rate.

In Expression 1, n_(i) and m_(i) (the respective down-link slotallocation to each user i and the respective up-link slot allocation toeach user i during a frame, respectively) are control variables. Valuesfor n_(i) and m_(i) may be determined in order to maximize the minimumof the weighted data rates for the remote stations, in this example theweighted data rates for down-link and up-link communications. In otherwords, the slots of a group are allocated among the plurality of remotestations communicating with a base station at a given time in such a waythat the weighted data rate of whichever remote station has the lowestweighted data rate among all of the remote stations (i.e., the “minimumweighted data rate”) is maximized. Thus, this solution advantageouslytakes account of the differing quality-of-service (QoS) requirements ofall I users. These requirements may be satisfied by “best-efforts”service, where the base station provides communication to the user orremote station when it is possible to do so in light of otherhigher-priority communication traffic. Or, the requirements may besatisfied by having a minimum data rate requirement based on theparticular type of communication being handled for that remote station.For example, video data may require a relatively high minimum data ratefor acceptable quality, whereas acceptable internet browsing and otherless data-intensive communication may be provided with a “best efforts”data rate.

It is challenging to find an optimal solution to Expression 1, becausethe partitioning problem is hard to solve in polynomial time, where forexample with I users in 2 groups the system would have to produce 2^(I)cases, meaning the solutions increase exponentially with each user.Therefore, another solution is a suboptimal approach in which thesolution determination is divided into two sequential sub-problems.

First, a slot allocation problem is solved for n_(i) and m_(i) for eachuser i, and without solving for or using constraints on x and a_(i). Forthis allocation an integer programming problem solution can bedetermined. Second, user grouping and frame partitioning problems aresolved, in which x and a_(i) are solved based on n_(i) and m_(i). Theproblem is still challenging due to the single x for both subframes andbecause each user group should not overlap across this boundary.Therefore, to perform the user grouping and frame partitioning problem,instead of determining a single x in the first instances, two separateratios are determined, a down-link frame partition, x_(D) (0≦x_(D)≦1),and an up-link frame partition, x_(U) (0≦x_(U)≦1), and from these x isdetermined.

A heuristic algorithm solution is now described in reference to FIG. 4,which shows an example process 200 for establishing duplexcommunications between a base station a plurality of remote stations.Block 202 may solve the developed linear programming problem todetermine n_(i) and m_(i), without first determining x or a_(i). Forexample, the system may allocate slots to users as if no partitioningexists, as would be the case in an F-FDD scheme, and as if no user groupassignments existed, as would be the case in TDD. For example,Expression 1 is solved without Constraints 3, 4, 7, and 8.

Thus, a linear programming problem is developed by performing asub-optimal or initial slot allocation in an H-FDD system. Such linearprogramming techniques (e.g., conventional techniques such as theSimplex method) can be used to determine how many slots in each subframeshould be allocated to each user i (i.e., to determine optimal valuesfor n_(i) and m_(i) for all users i). It is to be understood thattechniques other than linear programming may be used to determine howmany slots in each subframe to allocate to each user.

An example communication system in which only two users or remotestations communicate with a single base station using a subframe havingonly a single frequency reuse zone (e.g., a frequency reuse 1 zone or 3zone or an AMC) will be described for explanatory purposes. In thissimplified case, for the first, down-link expression in Expression 1,the linear programming problem reduces to maximizing the minimum of therespective weighted down-link data rates:

$\begin{matrix}{R = {\min\limits_{{i = 1},{\ldots\; I}}\;\frac{n_{i}R_{i}}{w_{i}}}} & \left( {{Expression}\mspace{14mu} 2} \right)\end{matrix}$subject to:n ₁ *R ₁ ≧w ₁ *R  (Constraint 11)n ₂ *R ₂ ≧W ₂ *R  (Constraint 12)n ₁ *R ₁ ≧R _(min1)  (Constraint 13)n ₂ *R ₂ ≧R _(min2)  (Constraint 14)n ₁ +n ₂ =N  (Constraint 15)n ₁≧0  (Constraint 16)n ₂≧0  (Constraint 17)

This simple linear programming problem and the corresponding solutionare illustrated graphically in FIG. 5. In this example solution, thevarious constraints are shown as illustrated as optimal point 250, whichhas coordinates corresponding to the simultaneously determined valuesfor a respective down-link slot allocation value 252 for remote station1 and a respective down-link slot allocation value 254 for remotestation 2.

Constraints 16 and 17 restrict the slot allocation of each user tonon-negative numbers, such that the solution must be in the upper-rightquadrant, as shown. Constraint 15 requires that all slots in thesubframe be used (i.e., every slot must be allocated to one of the tworemote stations). Constraints 11 and 12 implement the “best efforts”requirement of each of the two remote stations, with an optimal solutionproduced when equality holds for each of those two constraints (i.e.,when n₁*R₁=w_(i)*R and n₂*R₂=w₂*R) such that the two constraints can becombined to produce a linear equation in n₁ and n₂, namely:

$\begin{matrix}{\frac{n_{1}R_{1}}{w_{1}} = \frac{n_{2}R_{2}}{w_{2}}} & \left( {{Expression}\mspace{14mu} 3} \right)\end{matrix}$This line is also shown graphically in FIG. 5 and the point ofintersection is labeled.

Constraints 13 and 14 implement the minimum data rate requirements ofthe two users.

This very simplified example involving a subframe with only a singlezone and no minimum data rate requirement for either of the two users(i.e., R_(min1)=R_(min2)=0) yields a very simple closed-form solutionfor the optimal slot allocation among I users for the down-link:

$\begin{matrix}{{n_{j} = {\frac{\frac{w_{i}}{R_{j}}}{\sum\limits_{i = 1}^{I}\frac{w_{i}}{R_{i}}}N_{1}}},{j = 1},\ldots\mspace{14mu},I} & \left( {{Expression}\mspace{14mu} 4} \right)\end{matrix}$

The foregoing description provides one embodiment of a method ofcalculating slot allocations in a duplex communication system, such as aWiMAX H-FDD system. For simplicity of description, the numbers of slotswere not constrained to be integers. However, as will be apparent tothose skilled in the art, the numbers of slots n_(i) should have integervalues for all i=1, . . . , I (i.e., for all users). Therefore, after aslot allocation solution is found as described herein, any suitablepost-processing algorithm may be applied to obtain an integer slotallocation solution close to the calculated optimal solution. Forexample, conventional integer programming, round-off, or otheroptimization techniques may be used.

In any event, a similar determination to that for Expression 2 is madeof the up-link determination, using expressions and constraints similarto that of Constraints 11-17 above but applied to up-linkcommunications:

$\begin{matrix}{Q = {\min\limits_{{i = 1},{\ldots\; I}}\;\frac{m_{i}Q_{i}}{v_{i}}}} & \left( {{Expression}\mspace{14mu} 5} \right)\end{matrix}$

A corresponding solution to the linear programming problem for theup-link communication may be performed in the same way as for thedown-link solution; and thus we only provide an example of the finalsolution in FIG. 6. Optimal point 256 is shown as determined for therespective up-link slot allocations, m₁ and m₂, for remote stations 1and 2, respectively.

To solve for n_(i) and m_(i), the maximum of the minimums of thedown-link and up-link communications are taken for each user i accordingto Equations 2 and 5. For example, the maximum of the minimums formedfrom FIG. 5 and FIG. 6.

With the initial respective down-link and up-link slot allocations(n_(i) and m_(i), respectively) determined for each user i, the system(e.g., a block 204 of FIG. 4) may then determine user group assignmentsand frame partitioning by using a linear programming problem to minimizethe difference between the down-link frame partition, x_(D), and theup-link frame partition, x_(U):

$\begin{matrix}{{x_{D} - x_{U}}} & \left( {{Expression}\mspace{14mu} 6} \right)\end{matrix}$subject to:

$\begin{matrix}{{\sum\limits_{i = 1}^{I}{a_{i}n_{i}}} = {x_{D}N}} & \left( {{Constraint}\mspace{14mu} 18} \right) \\{{\sum\limits_{i = 1}^{I}{a_{i}m_{i}}} = {\left( {1 - x_{U}} \right)M}} & \left( {{Constraint}\mspace{14mu} 19} \right) \\{{\sum\limits_{i = 1}^{I}{\left( {1 - a_{i}} \right)n_{i}}} = {\left( {1 - x_{D}} \right)N}} & \left( {{Constraint}\mspace{14mu} 20} \right) \\{{\sum\limits_{i = 1}^{I}{\left( {1 - a_{i}} \right)m_{i}}} = {x_{U}M}} & \left( {{Constraint}\mspace{14mu} 21} \right)\end{matrix}$a _(i)=0 or 1 for every i  (Constraint 22)0≦x _(D)≦1  (Constraint 23)0≦x _(U)≦1  (Constraint 24)

Expression 6 may be described as a mixed integer programming problem,with an auxiliary variable Z, where the problem is expressed as one tominimize:Z  (Expression 7)subject to:Z≦x _(D) −x _(U)  (Constraint 22)Z≦x _(U) −x _(D)  (Constrain 23)Z≧0  (Constraint 24)

$\begin{matrix}{{\sum\limits_{i = 1}^{I}{a_{i}n_{i}}} = {x_{D}N}} & \left( {{Constraint}\mspace{14mu} 25} \right) \\{{\sum\limits_{i = 1}^{I}{a_{i}m_{i}}} = {\left( {1 - x_{U}} \right)M}} & \left( {{Constraint}\mspace{14mu} 26} \right) \\{{\sum\limits_{i = 1}^{I}{\left( {1 - a_{i}} \right)n_{i}}} = {\left( {1 - x_{D}} \right)N}} & \left( {{Constraint}\mspace{14mu} 27} \right) \\{{\sum\limits_{i = 1}^{I}{\left( {1 - a_{i}} \right)m_{i}}} = {x_{U}M}} & \left( {{Constraint}\mspace{14mu} 28} \right)\end{matrix}$a _(i)=0 or 1 for every i  (Constraint 29)0≦x _(D)≦1  (Constraint 30)0≦x _(U)≦1  (Constraint 31)

From this solution the optimal value for the down-link subframepartition, x_(D), and up-link subframe partition, x_(U) are obtained,for example, using mixed integer programming techniques. The valuesx_(D) and x_(U) are then used to determine the overall subframepartition, x, for the entire frame by the following expression:

$\begin{matrix}{x = \frac{x_{D} + x_{U}}{2}} & \left( {{Expression}\mspace{14mu} 8} \right)\end{matrix}$

With x and a_(i) determined, the slot allocation problem of Expression 1may be re-solved (e.g., through integer programming at block 206 of FIG.4) for each group to obtain new sets of n_(i)′ and m_(i)′. Specificallyfor remote stations assigned to Group 1, maximization the followingexpression is used:

$\begin{matrix}{\min\limits_{i \in {{Group}\; 1}}\left\lbrack {\min\limits_{{DL},{UL}}\left\{ {\frac{n_{i}^{\prime}R_{i}}{w_{i}},\frac{m_{i}^{\prime}Q_{i}}{v_{i}}} \right\}} \right\rbrack} & \left( {{Expression}\mspace{14mu} 9} \right)\end{matrix}$subject to:

${\sum\limits_{i \in {{Group}\; 1}}n_{i}^{\prime}} = {xN}$${\sum\limits_{i \in {{Group}\; 1}}m_{i}^{\prime}} = {\left( {1 - x} \right)M}$n _(i)′≧0m _(i)′≧0 integer for every i in Group IFor remote stations assigned to Group 2, maximization of the followingexpression is used:

$\begin{matrix}{\min\limits_{i \in {{Group}\; 2}}\left\lbrack {\min\limits_{{DL},{UL}}\left\{ {\frac{n_{i}^{\prime}R_{i}}{w_{i}},\frac{m_{i}^{\prime}Q_{i}}{v_{i}}} \right\}} \right\rbrack} & \left( {{Expression}\mspace{14mu} 10} \right)\end{matrix}$subject to:

${\sum\limits_{i \in {{Group}\; 2}}n_{i}^{\prime}} = {\left( {1 - x} \right)N}$${\sum\limits_{i \in {{Group}\; 2}}m_{i}^{\prime}} = {xM}$ni′≧0mi′≧0, integer for every i in Group 2

In other examples, the system may just take the n_(i) and m_(i) resultsfrom the suboptimal approach in (e.g., of block 202), as the final slotallocation values for each user i. While in other examples, an iterativeapproach using the calculated x and a_(i) values may be performed (e.g.,by block 206) to further refine or validate those values. Thisre-allocation of the respective down-link and up-link slot allocationmay occur dynamically, each frame, for example.

While the examples herein are described with reference to an OFDMA H-FDDsystem, the algorithms may be applied to an F-FDD system with a presetx=1, such that there is no user grouping nor frame partitioning.

FIG. 7 depicts a block diagram of an example base station 300 for acellular or other wireless communication system employing an embodimentof a slot allocation, user grouping, and frame partitioning method suchas described above. The illustrated base station 300 receivesinformation from each remote station i that is communicating with thebase station 300 at a given time regarding thecarrier-to-interference-plus-noise ratio (CINR) encountered by theremote station i. The CINR information, collectively represented byblock 302 in FIG. 7, is provided to a data rate assigner 304. Theassignor 304 assigns to each remote station i a down-link data rateR_(i) for communication of that remote station in each down-linksubframe. That down-link data rate R_(i) may be calculated as apre-determined function of the current CINR_(i) encountered by theremote station i. For example, the data rate R_(i) may be calculatedaccording to the formula R_(i)=log(l+CINR_(i,D)/Gamma), where Gamma is aconstant (e.g., Gamma=1) and (CINR_(i,D) corresponds to down-linkframes). Similarly, the up-link data rate Q_(i) may be calculatedaccording to the formula Q_(i)=log(+1(CINR_(i,U)/frame), where(CINR_(i,U) corresponds to the up-link frames). The data rates are usedby a slot allocation provider 306 to determine a slot allocation foreach remote station i, comprising a number n_(i) of slots of each frameto allocate to remote station i for down-link communication of remotestation i, and a number m_(i) of slots for each frame for up-linkcommunication. Upon finalization, the base station 300 provides therespective data rates produced by the data rate assigner 304 and therespective slot allocations produced by the slot allocation provider 306to the remote stations to permit subsequent communication between theremote stations and the base station 300. The base station 300 may alsoinclude a weighting module 308 configured to assign a weight to eachremote station based on, for example, a quality of service requirementof the remote station or other user information regarding each user orremote station. A weighted data rate of each remote station may then bebased on the weight assigned to that remote station.

Before the slot allocation provider finalizes n_(i) and m_(i), theinitial values are provided to a user grouper and frame partitioner 310which determines the user grouping, a_(i), and frame partition, x, forthe H-FDD system. Optionally, such values may then be returned to theslot allocation provider 306 for further optimization of the slotallocations; although as discussed above, this need not be the case.After the final slot allocations have been determined, frame datacommunications may be achieved between the base station and theplurality of remote stations in accordance with the down-link andup-link slot allocations.

Each of the blocks of the base station 300 shown in FIG. 7 may beimplemented as machine-readable instructions executed by a processor.Such instructions may be stored in a memory coupled to the processor orin any other desired computer-readable medium.

For illustrative purposes, the techniques described above were in thecontext of a WiMAX system, which employs orthogonal frequency-divisionmultiple-access to modulate the communicated data. However, similartechniques also may be applied in systems employing other modulationtechniques.

Those skilled in the art will also appreciate that slot-allocation, usergrouping and frame partition methods and apparatus such as describedabove may be developed entirely or partially within a base station or inany other suitable centralized or distributed location.

Although examples in the context of WiMAX (i.e., 802.16a/d/e) werediscussed above, these slot allocation techniques may be utilized inother contexts as well such as digital audio broadcast (DAB) systems anddigital video broadcast (DVB) systems. More generally, techniques suchas described above can be utilized in any OFDM synchronous communicationsystem.

The various blocks, operations, and techniques described above may beimplemented in hardware, firmware, software, or any combination ofhardware, firmware, and/or software. When implemented in software, thesoftware may be stored in any computer readable memory such as on amagnetic disk, an optical disk, or other storage medium, in a RAM or ROMor flash memory of a computer, processor, hard disk drive, optical diskdrive, tape drive, etc. Likewise, the software may be delivered to auser or a system via any known or desired delivery method including, forexample, on a computer readable disk or other transportable computerstorage mechanism or via communication media. Communication mediatypically embodies computer readable instructions, data structures,program modules or other data in a modulated data signal such as acarrier wave or other transport mechanism. The term “modulated datasignal” means a signal that has one or more of its characteristics setor changed in such a manner as to encode information in the signal. Byway of example, and not limitation, communication media includes wiredmedia such as a wired network or direct-wired connection, and wirelessmedia such as acoustic, radio frequency, infrared and other wirelessmedia. Thus, the software may be delivered to a user or a system via acommunication channel such as a telephone line, a DSL line, a cabletelevision line, a wireless communication channel, the Internet, etc.(which are viewed as being the same as or interchangeable with providingsuch software via a transportable storage medium). When implemented inhardware, the hardware may comprise one or more of discrete components,an integrated circuit, an application-specific integrated circuit(ASIC), etc.

While the present invention has been described with reference tospecific examples, which are intended to be illustrative only and not tobe limiting of the invention, it will be apparent to those of ordinaryskill in the art that changes, additions, or deletions in addition tothose explicitly described above may be made to the disclosedembodiments without departing from the spirit and scope of theinvention.

What is claimed is:
 1. A base station configured to establish duplexcommunication between the base station and a plurality of remotestations, wherein the duplex communication is partitioned into a seriesof frames, each frame including (i) a total integer number of slots, N,for down-link communication and (ii) a total integer number of slots, M,for up-link communication, the base station comprising: a processor; anda non-transitory computer readable storage medium coupled to theprocessor, the non-transitory computer readable storage medium storinginstructions that, when executed by the processor, cause the processorto assign, to each remote station, a respective down-link data rate anda respective up-link data rate for communication between that remotestation and the base station, provide, for each remote station, arespective down-link slot allocation for communication between thatremote station and the base station, wherein each respective down-linkslot allocation comprises a number of slots of the total slots N, andprovide, for each remote station, a respective up-link slot allocationfor communication between that remote station and the at least one basestation, wherein each respective up-link slot allocation comprises anumber of slots of the total slots M, wherein each remote station has arespective weighted down-link data rate associated with the respectivedown-link data rate assigned to that remote station, and each remotestation has a respective weighted up-link data rate associated with therespective up-link data rate assigned to that remote station, whereby aminimum of the respective weighted down-link data rates varies with therespective down-link slot allocation for each remote station, and aminimum of the respective weighted up-link data rates varies with therespective up-link slot allocation for each remote station, wherein thenon-transitory computer readable storage medium stores instructionsthat, when executed by the processor, cause the processor to determinethe respective down-link slot allocations of the plurality of remotestations and the respective up-link slot allocations of the plurality ofremote stations so as to maximize the minimum of the weighted down-linkdata rates and of the weighted up-link data rates of the plurality ofremote stations.
 2. The base station of claim 1, wherein the duplexcommunication is half-duplex communication, wherein each framecomprises: a first subframe in which (i) a first user group of remotestations receives down-link data and (ii) a second user group of remotestations communicates up-link data; and a second subframe in which (i)the first user group of remote stations communicates up-link data and(ii) the second user group of remote stations receives down-link data,wherein each of the remote stations is assigned to either the first usergroup or the second user group in each frame, and wherein the firstsubframe is separated from the second subframe by a frame partition. 3.The base station of claim 2, wherein the weighted down-link data rate ofeach remote station i is given by $\frac{n_{i}R_{i}}{w_{i}},$ wheren_(i) is the number of slots provided to the remote station i fordown-link communication in each frame, R_(i) is the down-link data rateper slot assigned to the remote station i for down-link communication ineach frame, and w_(i) is a down-link weighting factor assigned to theremote station i.
 4. The base station of claim 2, wherein the weightedup-link data rate of each remote station i is given by$\frac{m_{i}Q_{i}}{v_{i}},$ where m_(i) is the number of slots providedto the remote station i for up-link communication in each frame, Q_(i)is the up-link data rate per slot assigned to the remote station i forup-link communication in each frame, and v_(i) is a up-link weightingfactor assigned to the remote station i.
 5. The base station of claim 2,wherein the non-transitory computer readable storage medium storesinstructions that, when executed by the processor, cause the processorto, after providing the respective down-link slot allocation and therespective up-link slot allocation for each remote station, assign eachremote station to one of the first user group or the second user group.6. The base station of claim 5, wherein the non-transitory computerreadable storage medium stores instructions that, when executed by theprocessor, cause the processor to: determine a down-link frame partitionfor separating the first subframe and the second subframe for down-linkcommunications, where the down-link frame partition depends on therespective down-link slot allocations and the respective up-link slotallocations to each remote station and depends on the assignment of eachremote station to either the first user group or the second user group;determine an up-link frame partition for separating the first subframeand the second subframe for up-link communications, where the up-linkframe partition depends on the respective down-link slot allocations andthe respective up-link slot allocations to each remote station anddepends on the assignment of each remote station to either the firstuser group or the second user group; and determine the frame partitionfrom the down-link frame partition and the up-link frame partition. 7.The base station of claim 6, wherein the non-transitory computerreadable storage medium stores instructions that, when executed by theprocessor, cause the processor to determine the frame partition, x, as ageometric mean of the down-link frame partition, x_(D), and the up-linkframe partition, x_(U), given by $x = {\frac{x_{D} + x_{U}}{2}.}$
 8. Thebase station of claim 6, wherein the non-transitory computer readablestorage medium stores instructions that, when executed by the processor,cause the processor to re-allocate the down-link slot allocation and theup-link slot allocation to each remote station in response to thedetermination of the frame partition and after the assignment of eachremote station to one of the first user group or the second user group.9. The base station of claim 6, wherein the non-transitory computerreadable storage medium stores instructions that, when executed by theprocessor, cause the processor to minimize the difference between thedown-link frame partition and the up-link frame partition using mixedinteger programming to determine the frame partition.
 10. The basestation of claim 5, wherein the non-transitory computer readable storagemedium stores instructions that, when executed by the processor, causethe processor to, for a subsequent frame, reassign at least one of theremote stations from the first user group to the second user group orvice versa.
 11. The base station of claim 1, wherein every one of the Nslots for down-link communication and every one of the M slots forup-link communication are allocated to one of the plurality of remotestations in each frame.
 12. The base station of claim 1, wherein thebase station is configured to communicate data between the base stationand at least one of the plurality of remote stations in accordance withthe respective down-link and up-link slot allocations of that at leastone of the plurality of remote stations.
 13. A base station configuredto duplex communication in a slot-based communication system, whereincommunication is among the base station and a plurality of remotestations over a series of frames, each frame including (i) a totalinteger number of slots, N, for down-link communications and (ii) atotal integer number of slots, M, for up-link communications, the basestation comprising: a processor; and a non-transitory computer readablestorage medium coupled to the processor, the non-transitory computerreadable storage medium storing instructions that, when executed by theprocessor, cause the processor to identify, for each remote station ofthe plurality of remote stations, a respective down-link data rate and arespective up-link data rate for communication between the remotestation and the base station, wherein each remote station has (i) arespective down-link weighting factor indicative of a respective desireddown-link quality of service level of the remote station and (ii) arespective up-link weighting factor indicative of a respective desiredup-link quality of service level of the remote station, wherein eachremote station has a respective weighted down-link data rate associatedwith (i) the respective down-link data rate and (ii) the respectivedown-link weighting factor, and wherein each remote station has arespective weighted up-link data rate associated with (i) the respectiveup-link data rate and (ii) the respective up-link weighting factor,assign to each of the plurality of remote stations (i) a respectivedown-link slot allocation for receiving down-link data from the basestation during the frame and (ii) a respective up-link slot allocationfor transmitting up-link data to the base station during the frame, soas to maximize the minimum of the respective weighted down-link datarates and of the respective weighted up-link data rates of the pluralityof remote stations, assign each of the plurality of remote stations toone of a first user group and a second user group based on (i) theassigned respective down-link slot allocation and (ii) the assignedrespective up-link slot allocation for each of the remote stations,wherein remote stations in the first user group are to receive down-linkdata in a first subframe and communicate up-link data in a secondsubframe, and wherein remote stations in the second user group are tocommunicate up-link data in the first subframe and receive down-linkdata in the second subframe, and determine a frame partition separatingthe first subframe from the second subframe based on the assignedrespective down-link slot allocation and the assigned respective up-linkslot allocation for each of the remote stations.
 14. The base station ofclaim 13, wherein the weighted down-link data rate of each remotestation i is given by $\frac{n_{i}R_{i}}{w_{i}},$ where n_(i) is thenumber of slots assigned to the remote station i for down-linkcommunications in each frame, R_(i) is the down-link data rate per slotassigned to the remote station i for down-link communications in eachframe, and w_(i) is the respective down-link weighting factor assignedto the remote station i.
 15. The base station of claim 13, wherein theweighted up-link data rate of each remote station i is given by$\frac{m_{i}Q_{i}}{v_{i}},$ where m_(i) is the number of slots assignedto the remote station i for up-link communications in each frame, Q_(i)is the up-link data rate per slot assigned to the remote station i forup-link communications in each frame, and v_(i) is the respectiveup-link weighting factor assigned to the remote station i.
 16. The basestation of claim 13, wherein the respective down-link data rate and therespective up-link data rate are the same for each of the plurality ofremote stations.
 17. The base station of claim 13, wherein therespective down-link data rate depends on acarrier-to-interference-and-noise-ratio for down-link data and ismeasured by the respective remote station and communicated from therespective remote station to the base station, and wherein therespective up-link data rate depends on thecarrier-to-interference-and-noise-ratio for up-link data and is measuredby the base station.
 18. The base station of claim 13, wherein thenon-transitory computer readable storage medium stores instructionsthat, when executed by the processor, cause the processor to: assign allof the total number of slots, N, for down-link communications in a frameto remote stations; and assign all of the total number of slots, M, forup-link communications in a frame to remote stations.
 19. The basestation of claim 13, wherein the slot-based communication system is aWiMAX system wherein the WiMAX system communicates in a half-frequencydivision duplex mode.
 20. The base station of claim 13, the base stationis configured to communicate data between the base station and at leastone of the plurality of remote stations in accordance with therespective down-link and up-link slot allocations of that remotestation.
 21. The base station of claim 13, wherein the non-transitorycomputer readable storage medium stores instructions that, when executedby the processor, cause the processor to determine the frame partitionat least by: determining a down-link frame partition for separating thefirst subframe and the second subframe for down-link communications;determining an up-link frame partition for separating the first subframeand the second subframe for up-link communications; and determining theframe partition from the down-link frame partition and the up-link framepartition.
 22. The base station of claim 21, wherein the non-transitorycomputer readable storage medium stores instructions that, when executedby the processor, cause the processor to determine the frame partition,x, as an arithmetic mean of the down-link frame partition, x_(D), andthe up-link frame partition, x_(U), given by$x = {\frac{x_{D} + x_{U}}{2}.}$
 23. The base station of claim 13,wherein the non-transitory computer readable storage medium storesinstructions that, when executed by the processor, cause the processorto re-assign the down-link slot allocation and the up-link slotallocation to each remote station in response to the determination ofthe frame partition and user groupings prior to the base stationcommunicating slot allocation data to the plurality of remote stations.